static const guint16 keymap_linux2xtkbd[] = {
  [0x1] = 0x1,         /* 1 (KEY_ESC) => 1 */
  [0x2] = 0x2,         /* 2 (KEY_1) => 2 */
  [0x3] = 0x3,         /* 3 (KEY_2) => 3 */
  [0x4] = 0x4,         /* 4 (KEY_3) => 4 */
  [0x5] = 0x5,         /* 5 (KEY_4) => 5 */
  [0x6] = 0x6,         /* 6 (KEY_5) => 6 */
  [0x7] = 0x7,         /* 7 (KEY_6) => 7 */
  [0x8] = 0x8,         /* 8 (KEY_7) => 8 */
  [0x9] = 0x9,         /* 9 (KEY_8) => 9 */
  [0xa] = 0xa,         /* 10 (KEY_9) => 10 */
  [0xb] = 0xb,         /* 11 (KEY_0) => 11 */
  [0xc] = 0xc,         /* 12 (KEY_MINUS) => 12 */
  [0xd] = 0xd,         /* 13 (KEY_EQUAL) => 13 */
  [0xe] = 0xe,         /* 14 (KEY_BACKSPACE) => 14 */
  [0xf] = 0xf,         /* 15 (KEY_TAB) => 15 */
  [0x10] = 0x10,       /* 16 (KEY_Q) => 16 */
  [0x11] = 0x11,       /* 17 (KEY_W) => 17 */
  [0x12] = 0x12,       /* 18 (KEY_E) => 18 */
  [0x13] = 0x13,       /* 19 (KEY_R) => 19 */
  [0x14] = 0x14,       /* 20 (KEY_T) => 20 */
  [0x15] = 0x15,       /* 21 (KEY_Y) => 21 */
  [0x16] = 0x16,       /* 22 (KEY_U) => 22 */
  [0x17] = 0x17,       /* 23 (KEY_I) => 23 */
  [0x18] = 0x18,       /* 24 (KEY_O) => 24 */
  [0x19] = 0x19,       /* 25 (KEY_P) => 25 */
  [0x1a] = 0x1a,       /* 26 (KEY_LEFTBRACE) => 26 */
  [0x1b] = 0x1b,       /* 27 (KEY_RIGHTBRACE) => 27 */
  [0x1c] = 0x1c,       /* 28 (KEY_ENTER) => 28 */
  [0x1d] = 0x1d,       /* 29 (KEY_LEFTCTRL) => 29 */
  [0x1e] = 0x1e,       /* 30 (KEY_A) => 30 */
  [0x1f] = 0x1f,       /* 31 (KEY_S) => 31 */
  [0x20] = 0x20,       /* 32 (KEY_D) => 32 */
  [0x21] = 0x21,       /* 33 (KEY_F) => 33 */
  [0x22] = 0x22,       /* 34 (KEY_G) => 34 */
  [0x23] = 0x23,       /* 35 (KEY_H) => 35 */
  [0x24] = 0x24,       /* 36 (KEY_J) => 36 */
  [0x25] = 0x25,       /* 37 (KEY_K) => 37 */
  [0x26] = 0x26,       /* 38 (KEY_L) => 38 */
  [0x27] = 0x27,       /* 39 (KEY_SEMICOLON) => 39 */
  [0x28] = 0x28,       /* 40 (KEY_APOSTROPHE) => 40 */
  [0x29] = 0x29,       /* 41 (KEY_GRAVE) => 41 */
  [0x2a] = 0x2a,       /* 42 (KEY_LEFTSHIFT) => 42 */
  [0x2b] = 0x2b,       /* 43 (KEY_BACKSLASH) => 43 */
  [0x2c] = 0x2c,       /* 44 (KEY_Z) => 44 */
  [0x2d] = 0x2d,       /* 45 (KEY_X) => 45 */
  [0x2e] = 0x2e,       /* 46 (KEY_C) => 46 */
  [0x2f] = 0x2f,       /* 47 (KEY_V) => 47 */
  [0x30] = 0x30,       /* 48 (KEY_B) => 48 */
  [0x31] = 0x31,       /* 49 (KEY_N) => 49 */
  [0x32] = 0x32,       /* 50 (KEY_M) => 50 */
  [0x33] = 0x33,       /* 51 (KEY_COMMA) => 51 */
  [0x34] = 0x34,       /* 52 (KEY_DOT) => 52 */
  [0x35] = 0x35,       /* 53 (KEY_SLASH) => 53 */
  [0x36] = 0x36,       /* 54 (KEY_RIGHTSHIFT) => 54 */
  [0x37] = 0x37,       /* 55 (KEY_KPASTERISK) => 55 */
  [0x38] = 0x38,       /* 56 (KEY_LEFTALT) => 56 */
  [0x39] = 0x39,       /* 57 (KEY_SPACE) => 57 */
  [0x3a] = 0x3a,       /* 58 (KEY_CAPSLOCK) => 58 */
  [0x3b] = 0x3b,       /* 59 (KEY_F1) => 59 */
  [0x3c] = 0x3c,       /* 60 (KEY_F2) => 60 */
  [0x3d] = 0x3d,       /* 61 (KEY_F3) => 61 */
  [0x3e] = 0x3e,       /* 62 (KEY_F4) => 62 */
  [0x3f] = 0x3f,       /* 63 (KEY_F5) => 63 */
  [0x40] = 0x40,       /* 64 (KEY_F6) => 64 */
  [0x41] = 0x41,       /* 65 (KEY_F7) => 65 */
  [0x42] = 0x42,       /* 66 (KEY_F8) => 66 */
  [0x43] = 0x43,       /* 67 (KEY_F9) => 67 */
  [0x44] = 0x44,       /* 68 (KEY_F10) => 68 */
  [0x45] = 0x45,       /* 69 (KEY_NUMLOCK) => 69 */
  [0x46] = 0x46,       /* 70 (KEY_SCROLLLOCK) => 70 */
  [0x47] = 0x47,       /* 71 (KEY_KP7) => 71 */
  [0x48] = 0x48,       /* 72 (KEY_KP8) => 72 */
  [0x49] = 0x49,       /* 73 (KEY_KP9) => 73 */
  [0x4a] = 0x4a,       /* 74 (KEY_KPMINUS) => 74 */
  [0x4b] = 0x4b,       /* 75 (KEY_KP4) => 75 */
  [0x4c] = 0x4c,       /* 76 (KEY_KP5) => 76 */
  [0x4d] = 0x4d,       /* 77 (KEY_KP6) => 77 */
  [0x4e] = 0x4e,       /* 78 (KEY_KPPLUS) => 78 */
  [0x4f] = 0x4f,       /* 79 (KEY_KP1) => 79 */
  [0x50] = 0x50,       /* 80 (KEY_KP2) => 80 */
  [0x51] = 0x51,       /* 81 (KEY_KP3) => 81 */
  [0x52] = 0x52,       /* 82 (KEY_KP0) => 82 */
  [0x53] = 0x53,       /* 83 (KEY_KPDOT) => 83 */
  [0x54] = 0x54,       /* 84 => 84 */
  [0x55] = 0x76,       /* 85 (KEY_ZENKAKUHANKAKU) => 118 */
  [0x56] = 0x56,       /* 86 (KEY_102ND) => 86 */
  [0x57] = 0x57,       /* 87 (KEY_F11) => 87 */
  [0x58] = 0x58,       /* 88 (KEY_F12) => 88 */
  [0x59] = 0x73,       /* 89 (KEY_RO) => 115 */
  [0x5a] = 0x78,       /* 90 (KEY_KATAKANA) => 120 */
  [0x5b] = 0x77,       /* 91 (KEY_HIRAGANA) => 119 */
  [0x5c] = 0x79,       /* 92 (KEY_HENKAN) => 121 */
  [0x5d] = 0x70,       /* 93 (KEY_KATAKANAHIRAGANA) => 112 */
  [0x5e] = 0x7b,       /* 94 (KEY_MUHENKAN) => 123 */
  [0x5f] = 0x5c,       /* 95 (KEY_KPJPCOMMA) => 92 */
  [0x60] = 0x11c,      /* 96 (KEY_KPENTER) => 284 */
  [0x61] = 0x11d,      /* 97 (KEY_RIGHTCTRL) => 285 */
  [0x62] = 0x135,      /* 98 (KEY_KPSLASH) => 309 */
  [0x63] = 0x54,       /* 99 (KEY_SYSRQ) => 84 */
  [0x64] = 0x138,      /* 100 (KEY_RIGHTALT) => 312 */
  [0x65] = 0x5b,       /* 101 (KEY_LINEFEED) => 91 */
  [0x66] = 0x147,      /* 102 (KEY_HOME) => 327 */
  [0x67] = 0x148,      /* 103 (KEY_UP) => 328 */
  [0x68] = 0x149,      /* 104 (KEY_PAGEUP) => 329 */
  [0x69] = 0x14b,      /* 105 (KEY_LEFT) => 331 */
  [0x6a] = 0x14d,      /* 106 (KEY_RIGHT) => 333 */
  [0x6b] = 0x14f,      /* 107 (KEY_END) => 335 */
  [0x6c] = 0x150,      /* 108 (KEY_DOWN) => 336 */
  [0x6d] = 0x151,      /* 109 (KEY_PAGEDOWN) => 337 */
  [0x6e] = 0x152,      /* 110 (KEY_INSERT) => 338 */
  [0x6f] = 0x153,      /* 111 (KEY_DELETE) => 339 */
  [0x70] = 0x16f,      /* 112 (KEY_MACRO) => 367 */
  [0x71] = 0x120,      /* 113 (KEY_MUTE) => 288 */
  [0x72] = 0x12e,      /* 114 (KEY_VOLUMEDOWN) => 302 */
  [0x73] = 0x130,      /* 115 (KEY_VOLUMEUP) => 304 */
  [0x74] = 0x15e,      /* 116 (KEY_POWER) => 350 */
  [0x75] = 0x59,       /* 117 (KEY_KPEQUAL) => 89 */
  [0x76] = 0x14e,      /* 118 (KEY_KPPLUSMINUS) => 334 */
  [0x77] = 0x146,      /* 119 (KEY_PAUSE) => 326 */
  [0x78] = 0x10b,      /* 120 (KEY_SCALE) => 267 */
  [0x79] = 0x7e,       /* 121 (KEY_KPCOMMA) => 126 */
  [0x7b] = 0x10d,      /* 123 (KEY_HANJA) => 269 */
  [0x7c] = 0x7d,       /* 124 (KEY_YEN) => 125 */
  [0x7d] = 0x15b,      /* 125 (KEY_LEFTMETA) => 347 */
  [0x7e] = 0x15c,      /* 126 (KEY_RIGHTMETA) => 348 */
  [0x7f] = 0x15d,      /* 127 (KEY_COMPOSE) => 349 */
  [0x80] = 0x168,      /* 128 (KEY_STOP) => 360 */
  [0x81] = 0x105,      /* 129 (KEY_AGAIN) => 261 */
  [0x82] = 0x106,      /* 130 (KEY_PROPS) => 262 */
  [0x83] = 0x107,      /* 131 (KEY_UNDO) => 263 */
  [0x84] = 0x10c,      /* 132 (KEY_FRONT) => 268 */
  [0x85] = 0x178,      /* 133 (KEY_COPY) => 376 */
  [0x86] = 0x64,       /* 134 (KEY_OPEN) => 100 */
  [0x87] = 0x65,       /* 135 (KEY_PASTE) => 101 */
  [0x88] = 0x141,      /* 136 (KEY_FIND) => 321 */
  [0x89] = 0x13c,      /* 137 (KEY_CUT) => 316 */
  [0x8a] = 0x175,      /* 138 (KEY_HELP) => 373 */
  [0x8b] = 0x11e,      /* 139 (KEY_MENU) => 286 */
  [0x8c] = 0x121,      /* 140 (KEY_CALC) => 289 */
  [0x8d] = 0x66,       /* 141 (KEY_SETUP) => 102 */
  [0x8e] = 0x15f,      /* 142 (KEY_SLEEP) => 351 */
  [0x8f] = 0x163,      /* 143 (KEY_WAKEUP) => 355 */
  [0x90] = 0x67,       /* 144 (KEY_FILE) => 103 */
  [0x91] = 0x68,       /* 145 (KEY_SENDFILE) => 104 */
  [0x92] = 0x69,       /* 146 (KEY_DELETEFILE) => 105 */
  [0x93] = 0x113,      /* 147 (KEY_XFER) => 275 */
  [0x94] = 0x11f,      /* 148 (KEY_PROG1) => 287 */
  [0x95] = 0x117,      /* 149 (KEY_PROG2) => 279 */
  [0x96] = 0x102,      /* 150 (KEY_WWW) => 258 */
  [0x97] = 0x6a,       /* 151 (KEY_MSDOS) => 106 */
  [0x98] = 0x112,      /* 152 (KEY_SCREENLOCK) => 274 */
  [0x99] = 0x6b,       /* 153 (KEY_DIRECTION) => 107 */
  [0x9a] = 0x126,      /* 154 (KEY_CYCLEWINDOWS) => 294 */
  [0x9b] = 0x16c,      /* 155 (KEY_MAIL) => 364 */
  [0x9c] = 0x166,      /* 156 (KEY_BOOKMARKS) => 358 */
  [0x9d] = 0x16b,      /* 157 (KEY_COMPUTER) => 363 */
  [0x9e] = 0x16a,      /* 158 (KEY_BACK) => 362 */
  [0x9f] = 0x169,      /* 159 (KEY_FORWARD) => 361 */
  [0xa0] = 0x123,      /* 160 (KEY_CLOSECD) => 291 */
  [0xa1] = 0x6c,       /* 161 (KEY_EJECTCD) => 108 */
  [0xa2] = 0x17d,      /* 162 (KEY_EJECTCLOSECD) => 381 */
  [0xa3] = 0x119,      /* 163 (KEY_NEXTSONG) => 281 */
  [0xa4] = 0x122,      /* 164 (KEY_PLAYPAUSE) => 290 */
  [0xa5] = 0x110,      /* 165 (KEY_PREVIOUSSONG) => 272 */
  [0xa6] = 0x124,      /* 166 (KEY_STOPCD) => 292 */
  [0xa7] = 0x131,      /* 167 (KEY_RECORD) => 305 */
  [0xa8] = 0x118,      /* 168 (KEY_REWIND) => 280 */
  [0xa9] = 0x63,       /* 169 (KEY_PHONE) => 99 */
  [0xaa] = 0x70,       /* 170 (KEY_ISO) => 112 */
  [0xab] = 0x101,      /* 171 (KEY_CONFIG) => 257 */
  [0xac] = 0x132,      /* 172 (KEY_HOMEPAGE) => 306 */
  [0xad] = 0x167,      /* 173 (KEY_REFRESH) => 359 */
  [0xae] = 0x71,       /* 174 (KEY_EXIT) => 113 */
  [0xaf] = 0x72,       /* 175 (KEY_MOVE) => 114 */
  [0xb0] = 0x108,      /* 176 (KEY_EDIT) => 264 */
  [0xb1] = 0x75,       /* 177 (KEY_SCROLLUP) => 117 */
  [0xb2] = 0x10f,      /* 178 (KEY_SCROLLDOWN) => 271 */
  [0xb3] = 0x176,      /* 179 (KEY_KPLEFTPAREN) => 374 */
  [0xb4] = 0x17b,      /* 180 (KEY_KPRIGHTPAREN) => 379 */
  [0xb5] = 0x109,      /* 181 (KEY_NEW) => 265 */
  [0xb6] = 0x10a,      /* 182 (KEY_REDO) => 266 */
  [0xb7] = 0x5d,       /* 183 (KEY_F13) => 93 */
  [0xb8] = 0x5e,       /* 184 (KEY_F14) => 94 */
  [0xb9] = 0x5f,       /* 185 (KEY_F15) => 95 */
  [0xba] = 0x55,       /* 186 (KEY_F16) => 85 */
  [0xbb] = 0x103,      /* 187 (KEY_F17) => 259 */
  [0xbc] = 0x177,      /* 188 (KEY_F18) => 375 */
  [0xbd] = 0x104,      /* 189 (KEY_F19) => 260 */
  [0xbe] = 0x5a,       /* 190 (KEY_F20) => 90 */
  [0xbf] = 0x74,       /* 191 (KEY_F21) => 116 */
  [0xc0] = 0x179,      /* 192 (KEY_F22) => 377 */
  [0xc1] = 0x6d,       /* 193 (KEY_F23) => 109 */
  [0xc2] = 0x6f,       /* 194 (KEY_F24) => 111 */
  [0xc3] = 0x115,      /* 195 => 277 */
  [0xc4] = 0x116,      /* 196 => 278 */
  [0xc5] = 0x11a,      /* 197 => 282 */
  [0xc6] = 0x11b,      /* 198 => 283 */
  [0xc7] = 0x127,      /* 199 => 295 */
  [0xc8] = 0x128,      /* 200 (KEY_PLAYCD) => 296 */
  [0xc9] = 0x129,      /* 201 (KEY_PAUSECD) => 297 */
  [0xca] = 0x12b,      /* 202 (KEY_PROG3) => 299 */
  [0xcb] = 0x12c,      /* 203 (KEY_PROG4) => 300 */
  [0xcc] = 0x12d,      /* 204 (KEY_DASHBOARD) => 301 */
  [0xcd] = 0x125,      /* 205 (KEY_SUSPEND) => 293 */
  [0xce] = 0x12f,      /* 206 (KEY_CLOSE) => 303 */
  [0xcf] = 0x133,      /* 207 (KEY_PLAY) => 307 */
  [0xd0] = 0x134,      /* 208 (KEY_FASTFORWARD) => 308 */
  [0xd1] = 0x136,      /* 209 (KEY_BASSBOOST) => 310 */
  [0xd2] = 0x139,      /* 210 (KEY_PRINT) => 313 */
  [0xd3] = 0x13a,      /* 211 (KEY_HP) => 314 */
  [0xd4] = 0x13b,      /* 212 (KEY_CAMERA) => 315 */
  [0xd5] = 0x13d,      /* 213 (KEY_SOUND) => 317 */
  [0xd6] = 0x13e,      /* 214 (KEY_QUESTION) => 318 */
  [0xd7] = 0x13f,      /* 215 (KEY_EMAIL) => 319 */
  [0xd8] = 0x140,      /* 216 (KEY_CHAT) => 320 */
  [0xd9] = 0x165,      /* 217 (KEY_SEARCH) => 357 */
  [0xda] = 0x142,      /* 218 (KEY_CONNECT) => 322 */
  [0xdb] = 0x143,      /* 219 (KEY_FINANCE) => 323 */
  [0xdc] = 0x144,      /* 220 (KEY_SPORT) => 324 */
  [0xdd] = 0x145,      /* 221 (KEY_SHOP) => 325 */
  [0xde] = 0x114,      /* 222 (KEY_ALTERASE) => 276 */
  [0xdf] = 0x14a,      /* 223 (KEY_CANCEL) => 330 */
  [0xe0] = 0x14c,      /* 224 (KEY_BRIGHTNESSDOWN) => 332 */
  [0xe1] = 0x154,      /* 225 (KEY_BRIGHTNESSUP) => 340 */
  [0xe2] = 0x16d,      /* 226 (KEY_MEDIA) => 365 */
  [0xe3] = 0x156,      /* 227 (KEY_SWITCHVIDEOMODE) => 342 */
  [0xe4] = 0x157,      /* 228 (KEY_KBDILLUMTOGGLE) => 343 */
  [0xe5] = 0x158,      /* 229 (KEY_KBDILLUMDOWN) => 344 */
  [0xe6] = 0x159,      /* 230 (KEY_KBDILLUMUP) => 345 */
  [0xe7] = 0x15a,      /* 231 (KEY_SEND) => 346 */
  [0xe8] = 0x164,      /* 232 (KEY_REPLY) => 356 */
  [0xe9] = 0x10e,      /* 233 (KEY_FORWARDMAIL) => 270 */
  [0xea] = 0x155,      /* 234 (KEY_SAVE) => 341 */
  [0xeb] = 0x170,      /* 235 (KEY_DOCUMENTS) => 368 */
  [0xec] = 0x171,      /* 236 (KEY_BATTERY) => 369 */
  [0xed] = 0x172,      /* 237 (KEY_BLUETOOTH) => 370 */
  [0xee] = 0x173,      /* 238 (KEY_WLAN) => 371 */
  [0xef] = 0x174,      /* 239 (KEY_UWB) => 372 */
};
